<?php
/**
 * Controller is the customized base controller class.
 * All controller classes for this application should extend from this base class.
 */
class Controller extends CController
{
	/**
	 * @var string the default layout for the controller view. Defaults to '//layouts/column1',
	 * meaning using a single column layout. See 'protected/views/layouts/column1.php'.
	 */
	public $layout='//layouts/default';
        public $action = null;
        
	/**
	 * @var array context menu items. This property will be assigned to {@link CMenu::items}.
	 */
	public $menu=array();
	/**
	 * @var array the breadcrumbs of the current page. The value of this property will
	 * be assigned to {@link CBreadcrumbs::links}. Please refer to {@link CBreadcrumbs::links}
	 * for more details on how to specify this property.
	 */
	public $breadcrumbs=array();
        
        public function display($view, $data) {
            $data["main_content"] = "protected/views/$view";
            $this->renderPartial($this->layout,$data);
        }
        
        public function getRules(){
            $rules = null;
            $module = strtolower(str_replace('Controller', '', get_class($this)));
            $account_permisions = SystemAccountPermisionModel::model()->findByAttributes(array('module'=>$module,'username'=> Yii::app()->user->name));      
            if(is_object($account_permisions)){
                $permisions = explode(',', $account_permisions->permisions);
                $rules = array(
                           array('allow',
                                'actions'=>$permisions,
                                'users'=>array(Yii::app()->user->name),
                            ), 
                            array('deny',
                                'users'=>array('*'),
                            ),
                    );
                return $rules;
            }else{
                return array(
                    array('deny',
                        'users'=>array('*'),
                    ),
                );
            }
            
        } 
        
        public function convertToAlias($str) {
            $str = trim($str);
            $strFind = array(
                '- ',
                ' ',            
                'đ','Đ',
                'á','à','ạ','ả','ã','Á','À','Ạ','Ả','Ã','ă','ắ','ằ','ặ','ẳ','ẵ','Ă','Ắ','Ằ','Ặ','Ẳ','Ẵ','â','ấ','ầ','ậ','ẩ','ẫ','Â','Ấ','Ầ','Ậ','Ẩ','Ẫ',
                'ó','ò','ọ','ỏ','õ','Ó','Ò','Ọ','Ỏ','Õ','ô','ố','ồ','ộ','ổ','ỗ','Ô','Ố','Ồ','Ộ','Ổ','Ỗ','ơ','ớ','ờ','ợ','ở','ỡ','Ơ','Ớ','Ờ','Ợ','Ở','Ỡ',
                'é','è','ẹ','ẻ','ẽ','É','È','Ẹ','Ẻ','Ẽ','ê','ế','ề','ệ','ể','ễ','Ê','Ế','Ề','Ệ','Ể','Ễ',
                'ú','ù','ụ','ủ','ũ','Ú','Ù','Ụ','Ủ','Ũ','ư','ứ','ừ','ự','ử','ữ','Ư','Ứ','Ừ','Ự','Ử','Ữ',
                'í','ì','ị','ỉ','ĩ','Í','Ì','Ị','Ỉ','Ĩ',
                'ý','ỳ','ỵ','ỷ','ỹ','Ý','Ỳ','Ỵ','Ỷ','Ỹ'
                );
            $strReplace = array(
                '',
                '-',            
                'd','d',
                'a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a',
                'o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o',
                'e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e',
                'u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u',
                'i','i','i','i','i','i','i','i','i','i',
                'y','y','y','y','y','y','y','y','y','y'
                );

            return strtolower( preg_replace( '/[^a-z0-9\-]+/i','', str_replace($strFind, $strReplace, $str) ) );        
        } 
}